﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
using DAO;
using BUS;
using DTO;

namespace GUI
{
    public partial class Độcgiả : UserControl
    {
        public Độcgiả()
        {
            InitializeComponent();
        }
        DataTable dt = new DataTable();
        private int flag = 0;

        private void Độcgiả_Load(object sender, EventArgs e)
        {
            hienthi();
        }
        void hienthi()
        {
            DataTable dt = new DataTable();
            dt = DataProvider.GetDataTable("Docgia", DataProvider.ketnoi());
            Loadlistview(dt, lvwDSNguoiMuon);

            btnluu.Enabled = false;

        }
        #region Load banglistview
        public void Loadlistview(DataTable tbl, ListView lvw)
        {
            lvwDSNguoiMuon.Items.Clear();
            int istt = 0;
            foreach (DataRow drw in tbl.Rows)
            {
                istt++;
                ListViewItem lvwItem = new ListViewItem();
                lvwItem.Text = istt.ToString();
                lvwItem.SubItems.Add(drw["MaDG"].ToString());
                lvwItem.SubItems.Add(drw["TenDG"].ToString());
                string mg = Convert.ToDateTime(drw["NS"].ToString()).ToShortDateString();
                lvwItem.SubItems.Add(mg);
                lvwItem.SubItems.Add((bool)drw["GT"] == false ? "Nam" : "Nữ");
                lvwItem.SubItems.Add(drw["DiaChi"].ToString());
                lvwItem.ImageIndex = 0;
                lvwDSNguoiMuon.Items.Add(lvwItem);
                lbltongnguoimuon.Text = "Tổng số người mượn là : " + lvwDSNguoiMuon.Items.Count.ToString() + " Người";
            }
        }
        #endregion

        private void btnthemDocGia_Click(object sender, EventArgs e)
        {
            flag = 1;
            txtmadocgia.Focus();
            txttendocgia.Text = "";
            rbtnam.Checked = false;
            rbtnu.Checked = false;
            dtbngaysinh.Text = "";
            txtdiachi.Text = "";
            btnluu.Enabled = true;
            btnthemDocGia.Enabled = false;
            lvwDSNguoiMuon.Enabled = false;
        }

        private void lvwDSNguoiMuon_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (lvwDSNguoiMuon.SelectedItems.Count > 0)
            {
                ListViewItem item = lvwDSNguoiMuon.SelectedItems[lvwDSNguoiMuon.SelectedItems.Count - 1];
                if (item != null)
                {
                    foreach (ListViewItem lvw in lvwDSNguoiMuon.SelectedItems)
                    {
                        txtmadocgia.Text = lvw.SubItems[1].Text;
                        txttendocgia.Text = lvw.SubItems[2].Text;
                        dtbngaysinh.Text = lvw.SubItems[3].Text;
                        if (lvw.SubItems[4].Text == "Nam")
                            rbtnam.Checked = true;
                        else
                            rbtnu.Checked = true;
                        txtdiachi.Text = lvw.SubItems[5].Text;
                    }
                }
            }
        }

        private void btnluu_Click(object sender, EventArgs e)
        {
            if (flag == 1)
            {
                DialogResult d = MessageBox.Show("Bạn có chắc là muốn thêm sách mới ko ?", "Thông Báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
                if (d == DialogResult.Yes)
                {
                    DocgiaDTO dto = new DocgiaDTO();
                    dto.MaDG = txtmadocgia.Text;
                    dto.TenDG = txttendocgia.Text;
                    if (flag == 1)
                    {
                        dto.NS = Convert.ToDateTime(dtbngaysinh.Value);
                        dto.GT = rbtnam.Checked ? false : true;
                    }
                    dto.DiaChi = txtdiachi.Text;
                    if (DocgiaBUScs.themdocgia(dto) == true)
                    {
                        MessageBox.Show("Thêm sách thành công", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        btnthemDocGia.Enabled = true;
                        lvwDSNguoiMuon.Enabled = true;
                        btnluu.Enabled = false;
                        Độcgiả_Load(sender, e);
                    }
                }
            }
            if (flag == 2)
            {
                DialogResult a = MessageBox.Show("Bạn có chắc là muốn  update mới ko ?", "Thông Báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
                if (a == DialogResult.Yes)
                {
                    DocgiaDTO dto = new DocgiaDTO();
                    dto.MaDG = txtmadocgia.Text;
                    dto.TenDG = txttendocgia.Text;
                    if (flag == 2)
                    {
                        dto.NS = Convert.ToDateTime(dtbngaysinh.Value);
                        dto.GT = rbtnam.Checked ? false : true;
                    }
                    dto.DiaChi = txtdiachi.Text;
                    if (DocgiaBUScs.updatedocgia(dto) == true)
                    {
                        MessageBox.Show("Update thành công", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        btnupdate.Enabled = true;
                        lvwDSNguoiMuon.Enabled = true;
                        btnluu.Enabled = false;
                        Độcgiả_Load(sender, e);
                    }
                }

            }
        }

        private void btnupdate_Click(object sender, EventArgs e)
        {
            flag = 2;
            txtmadocgia.Enabled = false;
            txttendocgia.Focus();
            btnupdate.Enabled = false;
            btnluu.Enabled = true;
            lvwDSNguoiMuon.Enabled = false;
        }

        private void Btnthoatdocgia_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }

        private void btnxoadocgia_Click(object sender, EventArgs e)
        {
            DialogResult d = MessageBox.Show("Bạn có chắc là muốn thêm sách mới ko ?", "Thông Báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
            if (d == DialogResult.Yes)
            {
                DocgiaDTO sdto = new DocgiaDTO();
                sdto.MaDG = txtmadocgia.Text;
                if (DocgiaBUScs.xoadocgia(sdto) == true)
                {
                    MessageBox.Show("Xoá thành công", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    Độcgiả_Load(sender, e);
                }
            }
        }


    }
}
